package be.kdg.bombermanunlimited.server.remote.interfaces;

import java.rmi.Remote;
import java.rmi.RemoteException;
import java.util.List;

import be.kdg.bombermanunlimited.client.remote.interfaces.IGameListener;
import be.kdg.bombermanunlimited.server.objects.interfaces.IMap;
import be.kdg.bombermanunlimited.server.objects.interfaces.IPlayer;
/**
 * interface van remote object. dit zijn de rmi-methods die de client kan oproepen.
 * namen spreken voor zich.
 * @author pieter
 *
 */
public interface IGame extends Remote {
	IPlayer addPlayer(String name, IGameListener client) throws RemoteException;

	List<IPlayer> getPlayers() throws RemoteException;
	
	IMap getMap() throws RemoteException;

	void start() throws RemoteException;

	int getPlayerCount() throws RemoteException;

	void updateAllPlayers() throws RemoteException;
}
